問題一:
第6頁中,有一段註解提到「一個物件是名稱與值對組(name/value pairs)的一個群集,或字串對值的一種映射(map)」是什麼意思?
A: 這裡的map並非指JavaScript 陣列資料重組功能的map,而是單純表達陣列內,字串可以用值來表達。例如書中所舉例的 edition:7
let book = {
topic:"JavaScript";
edition:7;
}
問題二:
第7頁中,有一段註解提到「以 ?. 條件式存取特性」是什麼意思?
A: 「?.」意思是在存取屬性時檢查屬性是否存在。如果屬性存在,就會出現屬性的值,如果沒有這類屬性,則返回 undefined。
舉下方程式碼為例子,「?.」通常指前面的物件(book)裡面,有沒有這樣的屬性:
book = {
contents:1 //假設book內部有content:1
};
console.log(book?.contents); //1 (直接顯示book內部contents的值)
console.log(book?.ch01); //undefined (因為book內部沒有ch01屬性,所以出現undefined)
Reference:
O'REILLY JavaScript 大全